﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class KvalifikatsiooniParagrahv : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.SeaduseSate, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKvalifikatsiooniParagrahv {
        
        private global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.ISyyteosyndmus @__syyteosyndmus;
        
        private System.DateTime? @__sulgemiseKP;
        
        private string @__klientsysteemiID;
        
        public KvalifikatsiooniParagrahv() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public KvalifikatsiooniParagrahv(
                    global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.ISyyteosyndmus @syyteosyndmus, 
                    System.DateTime? @sulgemiseKP, 
                    string @klientsysteemiID, 
                    string @paragrahv, 
                    string @paragrahvPrimm, 
                    string @punkt, 
                    string @punktPrimm, 
                    string @tekst, 
                    System.Int64? @seadustikKL, 
                    System.Int64? @liikKL, 
                    string @loige, 
                    string @loigePrimm, 
                    string @tekstLyhendatult, 
                    System.Int64? @objektID, 
                    System.DateTime? @algusKP, 
                    System.DateTime? @loppKP, 
                    string @peatykkNR, 
                    System.Int64? @peatykiNimetusKL, 
                    string @jaguNR, 
                    System.Int64? @jaoNimetusKL, 
                    string @jaotisNR, 
                    System.Int64? @jaotiseNimetusKL) : 
                base(@paragrahv, @paragrahvPrimm, @punkt, @punktPrimm, @tekst, @seadustikKL, @liikKL, @loige, @loigePrimm, @tekstLyhendatult, @objektID, @algusKP, @loppKP, @peatykkNR, @peatykiNimetusKL, @jaguNR, @jaoNimetusKL, @jaotisNR, @jaotiseNimetusKL) {
            this.@__syyteosyndmus = @syyteosyndmus;
            this.@__sulgemiseKP = @sulgemiseKP;
            this.@__klientsysteemiID = @klientsysteemiID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected KvalifikatsiooniParagrahv(IKvalifikatsiooniParagrahv @kvalifikatsiooniParagrahv) : 
                base(@kvalifikatsiooniParagrahv.Paragrahv, @kvalifikatsiooniParagrahv.ParagrahvPrimm, @kvalifikatsiooniParagrahv.Punkt, @kvalifikatsiooniParagrahv.PunktPrimm, @kvalifikatsiooniParagrahv.Tekst, @kvalifikatsiooniParagrahv.SeadustikKL, @kvalifikatsiooniParagrahv.LiikKL, @kvalifikatsiooniParagrahv.Loige, @kvalifikatsiooniParagrahv.LoigePrimm, @kvalifikatsiooniParagrahv.TekstLyhendatult, @kvalifikatsiooniParagrahv.ObjektID, @kvalifikatsiooniParagrahv.AlgusKP, @kvalifikatsiooniParagrahv.LoppKP, @kvalifikatsiooniParagrahv.PeatykkNR, @kvalifikatsiooniParagrahv.PeatykiNimetusKL, @kvalifikatsiooniParagrahv.JaguNR, @kvalifikatsiooniParagrahv.JaoNimetusKL, @kvalifikatsiooniParagrahv.JaotisNR, @kvalifikatsiooniParagrahv.JaotiseNimetusKL) {
            this.@__syyteosyndmus = @kvalifikatsiooniParagrahv.Syyteosyndmus;
            this.@__sulgemiseKP = @kvalifikatsiooniParagrahv.SulgemiseKP;
            this.@__klientsysteemiID = @kvalifikatsiooniParagrahv.KlientsysteemiID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        public KvalifikatsiooniParagrahv(ISeaduseSate @seaduseSate) : 
                base(@seaduseSate) {
        }
        
        public virtual global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.ISyyteosyndmus Syyteosyndmus {
            get {
                return this.@__syyteosyndmus;
            }
            set {
                this.@__syyteosyndmus = value;
            }
        }
        
        public virtual System.DateTime? SulgemiseKP {
            get {
                return this.@__sulgemiseKP;
            }
            set {
                this.@__sulgemiseKP = value;
            }
        }
        
        public virtual string KlientsysteemiID {
            get {
                return this.@__klientsysteemiID;
            }
            set {
                this.@__klientsysteemiID = value;
            }
        }
    }
}
